package org.oc.qaq.service;

import org.oc.qaq.dto.TagDTO;
import org.oc.qaq.entity.Tag;
import org.oc.qaq.vo.TagVO;

import java.util.List;
import java.util.Map;

public interface TagService {
    List<Tag> getTags();

    void addTag(TagDTO tagDTO);

    void tagFile(String fileId, List<Long> tags);

    void tagFile(String fileId, Long tagId);

    void updateTag(TagDTO tagDTO);

    Map<String, List<TagVO>> findTagsByFileIds(List<String> fileIds);

    void removeDeleteTag(String id);

    void deleteBatch(List<Long> ids);

    void deleteTagByFileId(String id);

    void delete(Long id);

    List<Tag> findTagsByUserId(String currUserId);
}
